/**
 * @category  千分位转换
 * @param {number} num first string in an numberToThousands.
 * @example  numberToThousands(2323.32)=>'232,3.32'
 */
export default function numberToThousands(num: string | number){
  // 将数字转为字符串并取其小数部分，如果没有则为空字符串
  let cents = (num.toString().indexOf(".") > -1) ? num.toString().substr(num.toString().indexOf(".")) : "";  
  cents = cents.length == 2 ? cents + "0" : cents; // 若小数部分只有一位，则补上一个 0        
  num = Math.floor(Number(num)).toString();  // 去掉小数部分并转成字符串
  if (num.length <= 3) {  
      return (num == '' ? '0' : num) + cents;  // 处理空字符串和 '.00' 的情形
  }  
  let intPart = num.replace(/(\d)(?=(?:\d{3})+$)/g, '$1,');  // 截取整数部分并在其后面添加逗号分隔符
  return intPart + cents;  // 连接整数部分和小数部分
}